﻿using Newtonsoft.Json;
using Pay.TO;
using System;
using Pay.Core;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Pay.DTO {
    /// <summary>
    /// 合伙人系统登录信息
    /// </summary>
    [JsonObject(MemberSerialization.OptOut)]
    [Serializable]
    public class marketing_user_dto {
        /// <summary>
        /// 用户id
        /// </summary>
        public long id { get; set; }
        /// <summary>
        /// 用户角色
        /// </summary>
        public UserType? user_type { get; set; }
        /// <summary>
        /// 用户名
        /// </summary>
        public string user_name { get; set; }
        /// <summary>
        /// 手机号
        /// </summary>
        public string mobile { get; set; }
        /// <summary>
        /// 是否有填写收款信息
        /// </summary>
        public bool is_has_receivable { get; set; }
    }

    /// <summary>
    /// 合伙人系统登录信息
    /// </summary>
    [JsonObject(MemberSerialization.OptOut)]
    [Serializable]
    public class marketing_user_dto_ex : marketing_user_dto {
        /// <summary>
        /// 是否禁用
        /// </summary>
        public bool disabled { get; set; }
    }

        /// <summary>
        /// 合伙人系统用户基本信息
        /// </summary>
        [JsonObject(MemberSerialization.OptOut)]
    [Serializable]
    public class marketing_user_info_dto {
        /// <summary>
        /// 所属角色
        /// </summary>
        public UserType? user_type { get; set; }
        /// <summary>
        /// 所属角色枚举描述
        /// </summary>
        public string user_type_title { get { return this.user_type.ToDescription(); } }
        /// <summary>
        /// 真实姓名
        /// </summary>
        public string real_name { get; set; }
        /// <summary>
        /// 身份证
        /// </summary>
        public string id_card { get; set; }
        /// <summary>
        /// 注册时间
        /// </summary>
        public DateTime register_time { get; set; }
        /// <summary>
        /// 所属业务员
        /// </summary>
        public string inviter { get; set; }
        /// <summary>
        /// 所属业务员电话
        /// </summary>
        public string inviter_phone { get; set; }
        /// <summary>
        /// 直营业务员数量
        /// </summary>
        public int direct_num { get; set; }
        /// <summary>
        /// 加盟业务员数量
        /// </summary>
        public int indirect_num { get; set; }
    }

    /// <summary>
    /// 合伙人系统我的业务员信息
    /// </summary>
    [JsonObject(MemberSerialization.OptOut)]
    [Serializable]
    public class marketing_user_promoter_info_dto {
        /// <summary>
        /// 直营业务员
        /// </summary>
        public int direct_promoter_num { get; set; }
        /// <summary>
        /// 加盟业务员数量
        /// </summary>
        public int indirect_promoter_num { get; set; }
        /// <summary>
        /// 创客数量
        /// </summary>
        public int maker_num { get; set; }
        /// <summary>
        /// 节点商城数量
        /// </summary>
        public int node_mall_num { get; set; }
        /// <summary>
        /// 超级节点数量
        /// </summary>
        public int super_node_num { get; set; }
        /// <summary>
        /// 市分公司
        /// </summary>
        public int city_agent_num { get; set; }   
        
        /// <summary>
        /// 剩余允许开通创客数量
        /// </summary>
        public int allow_marker_num { get; set; }
    }

    /// <summary>
    /// 拓垦合伙人统计信息
    /// </summary>
    public class marketing_user_statistics_dto {
        /// <summary>
        /// 待确认收益
        /// </summary>
        public decimal un_confirm_profit { get; set; }
        /// <summary>
        /// 累计获得收益
        /// </summary>
        public decimal confirm_profit { get; set; }
        /// <summary>
        /// 总业务员人数
        /// </summary>
        public int total_promoter_num { get; set; }


    }

    /// <summary>
    /// 我的子级用户Model
    /// </summary>
    public class marketing_user_child_model {
        public long Id { get; set; }
        public long ParentId { get; set; }
        public UserType? UserType { get; set; }
    }


    #region 供应商PC
    /// <summary>
    /// 供应商PC系统登录信息
    /// </summary>
    [JsonObject(MemberSerialization.OptOut)]
    [Serializable]
    public class marketing_supplier_dto {
        /// <summary>
        /// 用户id
        /// </summary>
        public long id { get; set; }
        /// <summary>
        /// 用户角色
        /// </summary>
        public UserType? user_type { get; set; }
        /// <summary>
        /// 用户名
        /// </summary>
        public string user_name { get; set; }
        /// <summary>
        /// 手机号
        /// </summary>
        public string mobile { get; set; }
        /// <summary>
        /// 是否有商城
        /// </summary>
        public bool is_has_shop { get; set; }
        /// <summary>
        /// 是否禁用
        /// </summary>
        public bool disabled { get; set; }
        /// <summary>
        /// 店铺名称
        /// </summary>
        public string shop_name { get; set; }
    }
    #endregion

}
